import os
import re

def process_csv_file(file_path):
    """处理单个CSV文件，按照规则修改内容"""
    try:
        # 读取文件内容
        with open(file_path, 'r', encoding='utf-8') as f:
            lines = f.readlines()
        
        if not lines:
            return  # 空文件不处理
        
        processed_lines = []
        
        # 处理第一行：去掉第一个逗号
        first_line = lines[0]
        if ',' in first_line:
            # 找到第一个逗号的位置并移除
            first_comma_index = first_line.find(',')
            processed_first_line = first_line[:first_comma_index] + first_line[first_comma_index+1:]
            processed_lines.append(processed_first_line)
        else:
            processed_lines.append(first_line)
        
        # 处理后续行
        # 匹配以数字开头，后跟逗号，然后是类似XXXXXX.SH或XXXXXX.SZ格式的行
        pattern = r'^\d+,(?=\d+\.\w{2},)'
        
        for line in lines[1:]:
            # 检查是否符合模式
            if re.match(pattern, line):
                # 找到第一个逗号的位置，去掉之前的内容和逗号本身
                first_comma_index = line.find(',')
                processed_line = line[first_comma_index+1:]
                processed_lines.append(processed_line)
            else:
                # 不符合规则的行保持不变
                processed_lines.append(line)
        
        # 将处理后的内容写回文件
        with open(file_path, 'w', encoding='utf-8') as f:
            f.writelines(processed_lines)
            
        print(f"已处理文件: {file_path}")
        
    except Exception as e:
        print(f"处理文件 {file_path} 时出错: {str(e)}")

def main():
    # 目标目录
    target_dir = '../temp_data/板块数据分析'
    
    # 检查目录是否存在
    if not os.path.exists(target_dir):
        print(f"目录不存在: {target_dir}")
        return
    
    # 获取目录下所有以BK开头的CSV文件
    for filename in os.listdir(target_dir):
        if filename.startswith('BK') and filename.endswith('.csv'):
            file_path = os.path.join(target_dir, filename)
            if os.path.isfile(file_path):
                process_csv_file(file_path)
    
    print("处理完成")

if __name__ == "__main__":
    main()
